package cn.dsp.admin.service;


import cn.dsp.admin.entity.RolePerm;
import cn.dsp.admin.entity.admin.Role;

import java.util.List;

public interface IRoleService {

    /**
     * 添加新角色
     * @param role 角色类实例
     */
    void addRole(Role role,String createdUser);

    /**
     * 修改角色信息
     * @param roleId 角色id
     * @param adminName 执行操作管理员名字
     * @param role 角色信息实例
     */
    void changeInfo(Integer roleId, String adminName, Role role);

    /**
     * 根据角色id查询角色信息
     * @param roleId 角色id
     * @return 返回查询道德Role结果
     */
    Role getByRoleId(Integer roleId);


    /**
     * 根据RoleName查询 Role
     * @param roleName 角色名称
     * @return 返回查询到的Role结果
     */
    Role getByRoleName(String roleName);

    /**
     * 显示所有角色信息
     * @return
     */
    List<Role> getAllRole();

    /**
     *  根据角色名称查询符合的角色信息
     * @param roleName 相关字段
     * @return 查询到的结果
     */
    List<Role> getLikeRoleName(String roleName);

    /**
     * 删除Role数据信息
     * @param roleId 角色ID
     */
    void deleteByRoleId(Integer roleId);

    void roleAddPerm(RolePerm rolePerm);

    void deleteAllPermByRid(Integer roleId);




}
